package io.renren.modules.blog.service;

import io.renren.modules.blog.entity.BlogArticleTagEntity;
import io.renren.common.page.PageData;
import io.renren.common.service.BaseService;
import io.renren.modules.blog.dto.BlogArticleTagDto;

import java.util.ArrayList;
import java.util.Map;

/**
 * (BlogArticleTagEntity)表服务接口
 *
 * @author chy
 * @since 2024-06-26 16:08:54
 */
public interface BlogArticleTagService extends BaseService<BlogArticleTagEntity> {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    BlogArticleTagDto get(Long id);

    /**
     * 通过文章id查询tagId
     * @param artId
     * @return
     */
    Long[] getTagsByArtId(Long artId);

    /**
     * 分页查询
     *
     * @param params 筛选条件
     * @return 查询结果
     */
	PageData<BlogArticleTagDto> page(Map<String, Object> params);

    /**
     * 新增数据
     *
     * @param blogArticleTagDto 实例对象
     */
    void save(BlogArticleTagDto blogArticleTagDto);

    void insertArticleTags(ArrayList<BlogArticleTagEntity> blogArticleTagEntitys);

    /**
     * 修改数据
     *
     * @param blogArticleTagDto 实例对象
     */
    void update(BlogArticleTagDto blogArticleTagDto);

    /**
     * 通过主键删除数据
     *
     * @param ids 主键
     */
    void delete(Long[] ids);

    void deleteByArtId(Long artId);

}
